AWS Lambda から Google SpreadSheet を編集する
https://gyazo.com/b212d47d4e4d4339117edc71473dea4b
GCP側の準備
Google Sheets API を有効化する
サービスアカウントの鍵を保存する
編集対象のスプレッドシートを開き、サービスアカウントに共有する
AWS側の準備
GCPのサービスアカウントの鍵
編集対象スプレッドシートのkey
gspreadを同フォルダに pip install する(もしくは Layer を使ったりできる) SecretManager から取得したGCP認証情報を元に、スプレッドシートにアクセスして操作する
こんな感じ
code:py
gc = gspread.service_account_from_dict(json.loads(GCP_KEY))
sh = gc.open_by_key(SPREADSHEET_FILE_KEY)
worksheet_title = get_worksheet_name()
worksheet = None
try:
worksheet = sh.worksheet(worksheet_title)
except gspread.exceptions.WorksheetNotFound:
pass
# ワークシートが存在すれば削除
if worksheet:
sh.del_worksheet(worksheet)
# 編集対象のシートを追加
worksheet = sh.add_worksheet(title=worksheet_title, rows=100, cols=20)
Lambda にアップロードして、動作確認